EXPECTED = {'AttributeCertificateVersion1': {'extensibility-implied': False,
                                  'imports': {'PKIX1Explicit88': ['AlgorithmIdentifier',
                                                                  'Attribute',
                                                                  'CertificateSerialNumber',
                                                                  'Extensions',
                                                                  'UniqueIdentifier'],
                                              'PKIX1Implicit88': ['GeneralNames'],
                                              'PKIXAttributeCertificate': ['AttCertValidityPeriod',
                                                                           'IssuerSerial']},
                                  'object-classes': {},
                                  'object-sets': {},
                                  'tags': 'EXPLICIT',
                                  'types': {'AttCertVersionV1': {'named-numbers': {'v1': 0},
                                                                 'type': 'INTEGER'},
                                            'AttributeCertificateInfoV1': {'members': [{'default': 'v1',
                                                                                        'name': 'version',
                                                                                        'type': 'AttCertVersionV1'},
                                                                                       {'members': [{'name': 'baseCertificateID',
                                                                                                     'tag': {'number': 0},
                                                                                                     'type': 'IssuerSerial'},
                                                                                                    {'name': 'subjectName',
                                                                                                     'tag': {'number': 1},
                                                                                                     'type': 'GeneralNames'}],
                                                                                        'name': 'subject',
                                                                                        'type': 'CHOICE'},
                                                                                       {'name': 'issuer',
                                                                                        'type': 'GeneralNames'},
                                                                                       {'name': 'signature',
                                                                                        'type': 'AlgorithmIdentifier'},
                                                                                       {'name': 'serialNumber',
                                                                                        'type': 'CertificateSerialNumber'},
                                                                                       {'name': 'attCertValidityPeriod',
                                                                                        'type': 'AttCertValidityPeriod'},
                                                                                       {'element': {'type': 'Attribute'},
                                                                                        'name': 'attributes',
                                                                                        'type': 'SEQUENCE '
                                                                                                'OF'},
                                                                                       {'name': 'issuerUniqueID',
                                                                                        'optional': True,
                                                                                        'type': 'UniqueIdentifier'},
                                                                                       {'name': 'extensions',
                                                                                        'optional': True,
                                                                                        'type': 'Extensions'}],
                                                                           'type': 'SEQUENCE'},
                                            'AttributeCertificateV1': {'members': [{'name': 'acInfo',
                                                                                    'type': 'AttributeCertificateInfoV1'},
                                                                                   {'name': 'signatureAlgorithm',
                                                                                    'type': 'AlgorithmIdentifier'},
                                                                                   {'name': 'signature',
                                                                                    'type': 'BIT '
                                                                                            'STRING'}],
                                                                       'type': 'SEQUENCE'}},
                                  'values': {}},
 'CryptographicMessageSyntax2004': {'extensibility-implied': False,
                                    'imports': {'AttributeCertificateVersion1': ['AttributeCertificateV1'],
                                                'PKIX1Explicit88': ['AlgorithmIdentifier',
                                                                    'Certificate',
                                                                    'CertificateList',
                                                                    'CertificateSerialNumber',
                                                                    'Name'],
                                                'PKIXAttributeCertificate': ['AttributeCertificate']},
                                    'object-classes': {},
                                    'object-sets': {},
                                    'tags': 'IMPLICIT',
                                    'types': {'Attribute': {'members': [{'name': 'attrType',
                                                                         'type': 'OBJECT '
                                                                                 'IDENTIFIER'},
                                                                        {'element': {'type': 'AttributeValue'},
                                                                         'name': 'attrValues',
                                                                         'type': 'SET '
                                                                                 'OF'}],
                                                            'type': 'SEQUENCE'},
                                              'AttributeCertificateV2': {'type': 'AttributeCertificate'},
                                              'AttributeValue': {'type': 'ANY'},
                                              'AuthAttributes': {'element': {'type': 'Attribute'},
                                                                 'size': [(1,
                                                                           'MAX')],
                                                                 'type': 'SET '
                                                                         'OF'},
                                              'AuthenticatedData': {'members': [{'name': 'version',
                                                                                 'type': 'CMSVersion'},
                                                                                {'name': 'originatorInfo',
                                                                                 'optional': True,
                                                                                 'tag': {'kind': 'IMPLICIT',
                                                                                         'number': 0},
                                                                                 'type': 'OriginatorInfo'},
                                                                                {'name': 'recipientInfos',
                                                                                 'type': 'RecipientInfos'},
                                                                                {'name': 'macAlgorithm',
                                                                                 'type': 'MessageAuthenticationCodeAlgorithm'},
                                                                                {'name': 'digestAlgorithm',
                                                                                 'optional': True,
                                                                                 'tag': {'number': 1},
                                                                                 'type': 'DigestAlgorithmIdentifier'},
                                                                                {'name': 'encapContentInfo',
                                                                                 'type': 'EncapsulatedContentInfo'},
                                                                                {'name': 'authAttrs',
                                                                                 'optional': True,
                                                                                 'tag': {'kind': 'IMPLICIT',
                                                                                         'number': 2},
                                                                                 'type': 'AuthAttributes'},
                                                                                {'name': 'mac',
                                                                                 'type': 'MessageAuthenticationCode'},
                                                                                {'name': 'unauthAttrs',
                                                                                 'optional': True,
                                                                                 'tag': {'kind': 'IMPLICIT',
                                                                                         'number': 3},
                                                                                 'type': 'UnauthAttributes'}],
                                                                    'type': 'SEQUENCE'},
                                              'CMSVersion': {'named-numbers': {'v0': 0,
                                                                               'v1': 1,
                                                                               'v2': 2,
                                                                               'v3': 3,
                                                                               'v4': 4,
                                                                               'v5': 5},
                                                             'type': 'INTEGER'},
                                              'CertificateChoices': {'members': [{'name': 'certificate',
                                                                                  'type': 'Certificate'},
                                                                                 {'name': 'extendedCertificate',
                                                                                  'tag': {'kind': 'IMPLICIT',
                                                                                          'number': 0},
                                                                                  'type': 'ExtendedCertificate'},
                                                                                 {'name': 'v1AttrCert',
                                                                                  'tag': {'kind': 'IMPLICIT',
                                                                                          'number': 1},
                                                                                  'type': 'AttributeCertificateV1'},
                                                                                 {'name': 'v2AttrCert',
                                                                                  'tag': {'kind': 'IMPLICIT',
                                                                                          'number': 2},
                                                                                  'type': 'AttributeCertificateV2'},
                                                                                 {'name': 'other',
                                                                                  'tag': {'kind': 'IMPLICIT',
                                                                                          'number': 3},
                                                                                  'type': 'OtherCertificateFormat'}],
                                                                     'type': 'CHOICE'},
                                              'CertificateSet': {'element': {'type': 'CertificateChoices'},
                                                                 'type': 'SET '
                                                                         'OF'},
                                              'ContentEncryptionAlgorithmIdentifier': {'type': 'AlgorithmIdentifier'},
                                              'ContentInfo': {'members': [{'name': 'contentType',
                                                                           'type': 'ContentType'},
                                                                          {'choices': {},
                                                                           'name': 'content',
                                                                           'tag': {'kind': 'EXPLICIT',
                                                                                   'number': 0},
                                                                           'type': 'ANY '
                                                                                   'DEFINED '
                                                                                   'BY',
                                                                           'value': 'contentType'}],
                                                              'type': 'SEQUENCE'},
                                              'ContentType': {'type': 'OBJECT '
                                                                      'IDENTIFIER'},
                                              'Countersignature': {'type': 'SignerInfo'},
                                              'Digest': {'type': 'OCTET '
                                                                 'STRING'},
                                              'DigestAlgorithmIdentifier': {'type': 'AlgorithmIdentifier'},
                                              'DigestAlgorithmIdentifiers': {'element': {'type': 'DigestAlgorithmIdentifier'},
                                                                             'type': 'SET '
                                                                                     'OF'},
                                              'DigestedData': {'members': [{'name': 'version',
                                                                            'type': 'CMSVersion'},
                                                                           {'name': 'digestAlgorithm',
                                                                            'type': 'DigestAlgorithmIdentifier'},
                                                                           {'name': 'encapContentInfo',
                                                                            'type': 'EncapsulatedContentInfo'},
                                                                           {'name': 'digest',
                                                                            'type': 'Digest'}],
                                                               'type': 'SEQUENCE'},
                                              'EncapsulatedContentInfo': {'members': [{'name': 'eContentType',
                                                                                       'type': 'ContentType'},
                                                                                      {'name': 'eContent',
                                                                                       'optional': True,
                                                                                       'tag': {'kind': 'EXPLICIT',
                                                                                               'number': 0},
                                                                                       'type': 'OCTET '
                                                                                               'STRING'}],
                                                                          'type': 'SEQUENCE'},
                                              'EncryptedContent': {'type': 'OCTET '
                                                                           'STRING'},
                                              'EncryptedContentInfo': {'members': [{'name': 'contentType',
                                                                                    'type': 'ContentType'},
                                                                                   {'name': 'contentEncryptionAlgorithm',
                                                                                    'type': 'ContentEncryptionAlgorithmIdentifier'},
                                                                                   {'name': 'encryptedContent',
                                                                                    'optional': True,
                                                                                    'tag': {'kind': 'IMPLICIT',
                                                                                            'number': 0},
                                                                                    'type': 'EncryptedContent'}],
                                                                       'type': 'SEQUENCE'},
                                              'EncryptedData': {'members': [{'name': 'version',
                                                                             'type': 'CMSVersion'},
                                                                            {'name': 'encryptedContentInfo',
                                                                             'type': 'EncryptedContentInfo'},
                                                                            {'name': 'unprotectedAttrs',
                                                                             'optional': True,
                                                                             'tag': {'kind': 'IMPLICIT',
                                                                                     'number': 1},
                                                                             'type': 'UnprotectedAttributes'}],
                                                                'type': 'SEQUENCE'},
                                              'EncryptedKey': {'type': 'OCTET '
                                                                       'STRING'},
                                              'EnvelopedData': {'members': [{'name': 'version',
                                                                             'type': 'CMSVersion'},
                                                                            {'name': 'originatorInfo',
                                                                             'optional': True,
                                                                             'tag': {'kind': 'IMPLICIT',
                                                                                     'number': 0},
                                                                             'type': 'OriginatorInfo'},
                                                                            {'name': 'recipientInfos',
                                                                             'type': 'RecipientInfos'},
                                                                            {'name': 'encryptedContentInfo',
                                                                             'type': 'EncryptedContentInfo'},
                                                                            {'name': 'unprotectedAttrs',
                                                                             'optional': True,
                                                                             'tag': {'kind': 'IMPLICIT',
                                                                                     'number': 1},
                                                                             'type': 'UnprotectedAttributes'}],
                                                                'type': 'SEQUENCE'},
                                              'ExtendedCertificate': {'members': [{'name': 'extendedCertificateInfo',
                                                                                   'type': 'ExtendedCertificateInfo'},
                                                                                  {'name': 'signatureAlgorithm',
                                                                                   'type': 'SignatureAlgorithmIdentifier'},
                                                                                  {'name': 'signature',
                                                                                   'type': 'Signature'}],
                                                                      'type': 'SEQUENCE'},
                                              'ExtendedCertificateInfo': {'members': [{'name': 'version',
                                                                                       'type': 'CMSVersion'},
                                                                                      {'name': 'certificate',
                                                                                       'type': 'Certificate'},
                                                                                      {'name': 'attributes',
                                                                                       'type': 'UnauthAttributes'}],
                                                                          'type': 'SEQUENCE'},
                                              'ExtendedCertificateOrCertificate': {'members': [{'name': 'certificate',
                                                                                                'type': 'Certificate'},
                                                                                               {'name': 'extendedCertificate',
                                                                                                'tag': {'kind': 'IMPLICIT',
                                                                                                        'number': 0},
                                                                                                'type': 'ExtendedCertificate'}],
                                                                                   'type': 'CHOICE'},
                                              'IssuerAndSerialNumber': {'members': [{'name': 'issuer',
                                                                                     'type': 'Name'},
                                                                                    {'name': 'serialNumber',
                                                                                     'type': 'CertificateSerialNumber'}],
                                                                        'type': 'SEQUENCE'},
                                              'KEKIdentifier': {'members': [{'name': 'keyIdentifier',
                                                                             'type': 'OCTET '
                                                                                     'STRING'},
                                                                            {'name': 'date',
                                                                             'optional': True,
                                                                             'type': 'GeneralizedTime'},
                                                                            {'name': 'other',
                                                                             'optional': True,
                                                                             'type': 'OtherKeyAttribute'}],
                                                                'type': 'SEQUENCE'},
                                              'KEKRecipientInfo': {'members': [{'name': 'version',
                                                                                'type': 'CMSVersion'},
                                                                               {'name': 'kekid',
                                                                                'type': 'KEKIdentifier'},
                                                                               {'name': 'keyEncryptionAlgorithm',
                                                                                'type': 'KeyEncryptionAlgorithmIdentifier'},
                                                                               {'name': 'encryptedKey',
                                                                                'type': 'EncryptedKey'}],
                                                                   'type': 'SEQUENCE'},
                                              'KeyAgreeRecipientIdentifier': {'members': [{'name': 'issuerAndSerialNumber',
                                                                                           'type': 'IssuerAndSerialNumber'},
                                                                                          {'name': 'rKeyId',
                                                                                           'tag': {'kind': 'IMPLICIT',
                                                                                                   'number': 0},
                                                                                           'type': 'RecipientKeyIdentifier'}],
                                                                              'type': 'CHOICE'},
                                              'KeyAgreeRecipientInfo': {'members': [{'name': 'version',
                                                                                     'type': 'CMSVersion'},
                                                                                    {'name': 'originator',
                                                                                     'tag': {'kind': 'EXPLICIT',
                                                                                             'number': 0},
                                                                                     'type': 'OriginatorIdentifierOrKey'},
                                                                                    {'name': 'ukm',
                                                                                     'optional': True,
                                                                                     'tag': {'kind': 'EXPLICIT',
                                                                                             'number': 1},
                                                                                     'type': 'UserKeyingMaterial'},
                                                                                    {'name': 'keyEncryptionAlgorithm',
                                                                                     'type': 'KeyEncryptionAlgorithmIdentifier'},
                                                                                    {'name': 'recipientEncryptedKeys',
                                                                                     'type': 'RecipientEncryptedKeys'}],
                                                                        'type': 'SEQUENCE'},
                                              'KeyDerivationAlgorithmIdentifier': {'type': 'AlgorithmIdentifier'},
                                              'KeyEncryptionAlgorithmIdentifier': {'type': 'AlgorithmIdentifier'},
                                              'KeyTransRecipientInfo': {'members': [{'name': 'version',
                                                                                     'type': 'CMSVersion'},
                                                                                    {'name': 'rid',
                                                                                     'type': 'RecipientIdentifier'},
                                                                                    {'name': 'keyEncryptionAlgorithm',
                                                                                     'type': 'KeyEncryptionAlgorithmIdentifier'},
                                                                                    {'name': 'encryptedKey',
                                                                                     'type': 'EncryptedKey'}],
                                                                        'type': 'SEQUENCE'},
                                              'MessageAuthenticationCode': {'type': 'OCTET '
                                                                                    'STRING'},
                                              'MessageAuthenticationCodeAlgorithm': {'type': 'AlgorithmIdentifier'},
                                              'MessageDigest': {'type': 'OCTET '
                                                                        'STRING'},
                                              'OriginatorIdentifierOrKey': {'members': [{'name': 'issuerAndSerialNumber',
                                                                                         'type': 'IssuerAndSerialNumber'},
                                                                                        {'name': 'subjectKeyIdentifier',
                                                                                         'tag': {'number': 0},
                                                                                         'type': 'SubjectKeyIdentifier'},
                                                                                        {'name': 'originatorKey',
                                                                                         'tag': {'number': 1},
                                                                                         'type': 'OriginatorPublicKey'}],
                                                                            'type': 'CHOICE'},
                                              'OriginatorInfo': {'members': [{'name': 'certs',
                                                                              'optional': True,
                                                                              'tag': {'kind': 'IMPLICIT',
                                                                                      'number': 0},
                                                                              'type': 'CertificateSet'},
                                                                             {'name': 'crls',
                                                                              'optional': True,
                                                                              'tag': {'kind': 'IMPLICIT',
                                                                                      'number': 1},
                                                                              'type': 'RevocationInfoChoices'}],
                                                                 'type': 'SEQUENCE'},
                                              'OriginatorPublicKey': {'members': [{'name': 'algorithm',
                                                                                   'type': 'AlgorithmIdentifier'},
                                                                                  {'name': 'publicKey',
                                                                                   'type': 'BIT '
                                                                                           'STRING'}],
                                                                      'type': 'SEQUENCE'},
                                              'OtherCertificateFormat': {'members': [{'name': 'otherCertFormat',
                                                                                      'type': 'OBJECT '
                                                                                              'IDENTIFIER'},
                                                                                     {'choices': {},
                                                                                      'name': 'otherCert',
                                                                                      'type': 'ANY '
                                                                                              'DEFINED '
                                                                                              'BY',
                                                                                      'value': 'otherCertFormat'}],
                                                                         'type': 'SEQUENCE'},
                                              'OtherKeyAttribute': {'members': [{'name': 'keyAttrId',
                                                                                 'type': 'OBJECT '
                                                                                         'IDENTIFIER'},
                                                                                {'choices': {},
                                                                                 'name': 'keyAttr',
                                                                                 'optional': True,
                                                                                 'type': 'ANY '
                                                                                         'DEFINED '
                                                                                         'BY',
                                                                                 'value': 'keyAttrId'}],
                                                                    'type': 'SEQUENCE'},
                                              'OtherRecipientInfo': {'members': [{'name': 'oriType',
                                                                                  'type': 'OBJECT '
                                                                                          'IDENTIFIER'},
                                                                                 {'choices': {},
                                                                                  'name': 'oriValue',
                                                                                  'type': 'ANY '
                                                                                          'DEFINED '
                                                                                          'BY',
                                                                                  'value': 'oriType'}],
                                                                     'type': 'SEQUENCE'},
                                              'OtherRevocationInfoFormat': {'members': [{'name': 'otherRevInfoFormat',
                                                                                         'type': 'OBJECT '
                                                                                                 'IDENTIFIER'},
                                                                                        {'choices': {},
                                                                                         'name': 'otherRevInfo',
                                                                                         'type': 'ANY '
                                                                                                 'DEFINED '
                                                                                                 'BY',
                                                                                         'value': 'otherRevInfoFormat'}],
                                                                            'type': 'SEQUENCE'},
                                              'PasswordRecipientInfo': {'members': [{'name': 'version',
                                                                                     'type': 'CMSVersion'},
                                                                                    {'name': 'keyDerivationAlgorithm',
                                                                                     'optional': True,
                                                                                     'tag': {'number': 0},
                                                                                     'type': 'KeyDerivationAlgorithmIdentifier'},
                                                                                    {'name': 'keyEncryptionAlgorithm',
                                                                                     'type': 'KeyEncryptionAlgorithmIdentifier'},
                                                                                    {'name': 'encryptedKey',
                                                                                     'type': 'EncryptedKey'}],
                                                                        'type': 'SEQUENCE'},
                                              'RecipientEncryptedKey': {'members': [{'name': 'rid',
                                                                                     'type': 'KeyAgreeRecipientIdentifier'},
                                                                                    {'name': 'encryptedKey',
                                                                                     'type': 'EncryptedKey'}],
                                                                        'type': 'SEQUENCE'},
                                              'RecipientEncryptedKeys': {'element': {'type': 'RecipientEncryptedKey'},
                                                                         'type': 'SEQUENCE '
                                                                                 'OF'},
                                              'RecipientIdentifier': {'members': [{'name': 'issuerAndSerialNumber',
                                                                                   'type': 'IssuerAndSerialNumber'},
                                                                                  {'name': 'subjectKeyIdentifier',
                                                                                   'tag': {'number': 0},
                                                                                   'type': 'SubjectKeyIdentifier'}],
                                                                      'type': 'CHOICE'},
                                              'RecipientInfo': {'members': [{'name': 'ktri',
                                                                             'type': 'KeyTransRecipientInfo'},
                                                                            {'name': 'kari',
                                                                             'tag': {'number': 1},
                                                                             'type': 'KeyAgreeRecipientInfo'},
                                                                            {'name': 'kekri',
                                                                             'tag': {'number': 2},
                                                                             'type': 'KEKRecipientInfo'},
                                                                            {'name': 'pwri',
                                                                             'tag': {'number': 3},
                                                                             'type': 'PasswordRecipientInfo'},
                                                                            {'name': 'ori',
                                                                             'tag': {'number': 4},
                                                                             'type': 'OtherRecipientInfo'}],
                                                                'type': 'CHOICE'},
                                              'RecipientInfos': {'element': {'type': 'RecipientInfo'},
                                                                 'size': [(1,
                                                                           'MAX')],
                                                                 'type': 'SET '
                                                                         'OF'},
                                              'RecipientKeyIdentifier': {'members': [{'name': 'subjectKeyIdentifier',
                                                                                      'type': 'SubjectKeyIdentifier'},
                                                                                     {'name': 'date',
                                                                                      'optional': True,
                                                                                      'type': 'GeneralizedTime'},
                                                                                     {'name': 'other',
                                                                                      'optional': True,
                                                                                      'type': 'OtherKeyAttribute'}],
                                                                         'type': 'SEQUENCE'},
                                              'RevocationInfoChoice': {'members': [{'name': 'crl',
                                                                                    'type': 'CertificateList'},
                                                                                   {'name': 'other',
                                                                                    'tag': {'kind': 'IMPLICIT',
                                                                                            'number': 1},
                                                                                    'type': 'OtherRevocationInfoFormat'}],
                                                                       'type': 'CHOICE'},
                                              'RevocationInfoChoices': {'element': {'type': 'RevocationInfoChoice'},
                                                                        'type': 'SET '
                                                                                'OF'},
                                              'Signature': {'type': 'BIT '
                                                                    'STRING'},
                                              'SignatureAlgorithmIdentifier': {'type': 'AlgorithmIdentifier'},
                                              'SignatureValue': {'type': 'OCTET '
                                                                         'STRING'},
                                              'SignedAttributes': {'element': {'type': 'Attribute'},
                                                                   'size': [(1,
                                                                             'MAX')],
                                                                   'type': 'SET '
                                                                           'OF'},
                                              'SignedData': {'members': [{'name': 'version',
                                                                          'type': 'CMSVersion'},
                                                                         {'name': 'digestAlgorithms',
                                                                          'type': 'DigestAlgorithmIdentifiers'},
                                                                         {'name': 'encapContentInfo',
                                                                          'type': 'EncapsulatedContentInfo'},
                                                                         {'name': 'certificates',
                                                                          'optional': True,
                                                                          'tag': {'kind': 'IMPLICIT',
                                                                                  'number': 0},
                                                                          'type': 'CertificateSet'},
                                                                         {'name': 'crls',
                                                                          'optional': True,
                                                                          'tag': {'kind': 'IMPLICIT',
                                                                                  'number': 1},
                                                                          'type': 'RevocationInfoChoices'},
                                                                         {'name': 'signerInfos',
                                                                          'type': 'SignerInfos'}],
                                                             'type': 'SEQUENCE'},
                                              'SignerIdentifier': {'members': [{'name': 'issuerAndSerialNumber',
                                                                                'type': 'IssuerAndSerialNumber'},
                                                                               {'name': 'subjectKeyIdentifier',
                                                                                'tag': {'number': 0},
                                                                                'type': 'SubjectKeyIdentifier'}],
                                                                   'type': 'CHOICE'},
                                              'SignerInfo': {'members': [{'name': 'version',
                                                                          'type': 'CMSVersion'},
                                                                         {'name': 'sid',
                                                                          'type': 'SignerIdentifier'},
                                                                         {'name': 'digestAlgorithm',
                                                                          'type': 'DigestAlgorithmIdentifier'},
                                                                         {'name': 'signedAttrs',
                                                                          'optional': True,
                                                                          'tag': {'kind': 'IMPLICIT',
                                                                                  'number': 0},
                                                                          'type': 'SignedAttributes'},
                                                                         {'name': 'signatureAlgorithm',
                                                                          'type': 'SignatureAlgorithmIdentifier'},
                                                                         {'name': 'signature',
                                                                          'type': 'SignatureValue'},
                                                                         {'name': 'unsignedAttrs',
                                                                          'optional': True,
                                                                          'tag': {'kind': 'IMPLICIT',
                                                                                  'number': 1},
                                                                          'type': 'UnsignedAttributes'}],
                                                             'type': 'SEQUENCE'},
                                              'SignerInfos': {'element': {'type': 'SignerInfo'},
                                                              'type': 'SET OF'},
                                              'SigningTime': {'type': 'Time'},
                                              'SubjectKeyIdentifier': {'type': 'OCTET '
                                                                               'STRING'},
                                              'Time': {'members': [{'name': 'utcTime',
                                                                    'type': 'UTCTime'},
                                                                   {'name': 'generalTime',
                                                                    'type': 'GeneralizedTime'}],
                                                       'type': 'CHOICE'},
                                              'UnauthAttributes': {'element': {'type': 'Attribute'},
                                                                   'size': [(1,
                                                                             'MAX')],
                                                                   'type': 'SET '
                                                                           'OF'},
                                              'UnprotectedAttributes': {'element': {'type': 'Attribute'},
                                                                        'size': [(1,
                                                                                  'MAX')],
                                                                        'type': 'SET '
                                                                                'OF'},
                                              'UnsignedAttributes': {'element': {'type': 'Attribute'},
                                                                     'size': [(1,
                                                                               'MAX')],
                                                                     'type': 'SET '
                                                                             'OF'},
                                              'UserKeyingMaterial': {'type': 'OCTET '
                                                                             'STRING'}},
                                    'values': {'id-contentType': {'type': 'OBJECT '
                                                                          'IDENTIFIER',
                                                                  'value': [('iso',
                                                                             1),
                                                                            ('member-body',
                                                                             2),
                                                                            ('us',
                                                                             840),
                                                                            ('rsadsi',
                                                                             113549),
                                                                            ('pkcs',
                                                                             1),
                                                                            ('pkcs9',
                                                                             9),
                                                                            3]},
                                               'id-countersignature': {'type': 'OBJECT '
                                                                               'IDENTIFIER',
                                                                       'value': [('iso',
                                                                                  1),
                                                                                 ('member-body',
                                                                                  2),
                                                                                 ('us',
                                                                                  840),
                                                                                 ('rsadsi',
                                                                                  113549),
                                                                                 ('pkcs',
                                                                                  1),
                                                                                 ('pkcs9',
                                                                                  9),
                                                                                 6]},
                                               'id-ct-authData': {'type': 'OBJECT '
                                                                          'IDENTIFIER',
                                                                  'value': [('iso',
                                                                             1),
                                                                            ('member-body',
                                                                             2),
                                                                            ('us',
                                                                             840),
                                                                            ('rsadsi',
                                                                             113549),
                                                                            ('pkcs',
                                                                             1),
                                                                            ('pkcs-9',
                                                                             9),
                                                                            ('smime',
                                                                             16),
                                                                            ('ct',
                                                                             1),
                                                                            2]},
                                               'id-ct-contentInfo': {'type': 'OBJECT '
                                                                             'IDENTIFIER',
                                                                     'value': [('iso',
                                                                                1),
                                                                               ('member-body',
                                                                                2),
                                                                               ('us',
                                                                                840),
                                                                               ('rsadsi',
                                                                                113549),
                                                                               ('pkcs',
                                                                                1),
                                                                               ('pkcs9',
                                                                                9),
                                                                               ('smime',
                                                                                16),
                                                                               ('ct',
                                                                                1),
                                                                               6]},
                                               'id-data': {'type': 'OBJECT '
                                                                   'IDENTIFIER',
                                                           'value': [('iso', 1),
                                                                     ('member-body',
                                                                      2),
                                                                     ('us',
                                                                      840),
                                                                     ('rsadsi',
                                                                      113549),
                                                                     ('pkcs',
                                                                      1),
                                                                     ('pkcs7',
                                                                      7),
                                                                     1]},
                                               'id-digestedData': {'type': 'OBJECT '
                                                                           'IDENTIFIER',
                                                                   'value': [('iso',
                                                                              1),
                                                                             ('member-body',
                                                                              2),
                                                                             ('us',
                                                                              840),
                                                                             ('rsadsi',
                                                                              113549),
                                                                             ('pkcs',
                                                                              1),
                                                                             ('pkcs7',
                                                                              7),
                                                                             5]},
                                               'id-encryptedData': {'type': 'OBJECT '
                                                                            'IDENTIFIER',
                                                                    'value': [('iso',
                                                                               1),
                                                                              ('member-body',
                                                                               2),
                                                                              ('us',
                                                                               840),
                                                                              ('rsadsi',
                                                                               113549),
                                                                              ('pkcs',
                                                                               1),
                                                                              ('pkcs7',
                                                                               7),
                                                                              6]},
                                               'id-envelopedData': {'type': 'OBJECT '
                                                                            'IDENTIFIER',
                                                                    'value': [('iso',
                                                                               1),
                                                                              ('member-body',
                                                                               2),
                                                                              ('us',
                                                                               840),
                                                                              ('rsadsi',
                                                                               113549),
                                                                              ('pkcs',
                                                                               1),
                                                                              ('pkcs7',
                                                                               7),
                                                                              3]},
                                               'id-messageDigest': {'type': 'OBJECT '
                                                                            'IDENTIFIER',
                                                                    'value': [('iso',
                                                                               1),
                                                                              ('member-body',
                                                                               2),
                                                                              ('us',
                                                                               840),
                                                                              ('rsadsi',
                                                                               113549),
                                                                              ('pkcs',
                                                                               1),
                                                                              ('pkcs9',
                                                                               9),
                                                                              4]},
                                               'id-signedData': {'type': 'OBJECT '
                                                                         'IDENTIFIER',
                                                                 'value': [('iso',
                                                                            1),
                                                                           ('member-body',
                                                                            2),
                                                                           ('us',
                                                                            840),
                                                                           ('rsadsi',
                                                                            113549),
                                                                           ('pkcs',
                                                                            1),
                                                                           ('pkcs7',
                                                                            7),
                                                                           2]},
                                               'id-signingTime': {'type': 'OBJECT '
                                                                          'IDENTIFIER',
                                                                  'value': [('iso',
                                                                             1),
                                                                            ('member-body',
                                                                             2),
                                                                            ('us',
                                                                             840),
                                                                            ('rsadsi',
                                                                             113549),
                                                                            ('pkcs',
                                                                             1),
                                                                            ('pkcs9',
                                                                             9),
                                                                            5]}}}}